#include "../tools.h"


// 旋转 180°
/**
 * 1 2 3
 * 4 5 6
 * 7 8 9
 * 
 * 9 8 7
 * 6 5 4
 * 3 2 1
 * 
 */
class Solution {
public:

    void rotate(vector<vector<int>>& matrix) {
        int nrow = matrix.size(), ncol = matrix[0].size();
        for(int i = 0; i < (nrow + 1) / 2; ++i)
            for(int j = 0; j < ncol; ++j)
                swap(matrix[i][j], matrix[nrow - 1 - i][ncol - 1 - j]);

    }
};


int main(int argc, char const *argv[])
{
    Solution sol;

    // vector<vector<int>> matrix = {
    //     {1,2,3},
    //     {4,5,6},
    //     {7,8,9}
    // };

    vector<vector<int>> matrix = {
        {1,2,3,4},
        {5,6,7,8},
        {9,10,11,12},
        {13,14,15,16}
    };

    show(matrix);

    sol.rotate(matrix);
    show(matrix);
    
    
    return 0;
}
